package com.tianji.remark.service;

import com.tianji.remark.domain.dto.LikeRecordFormDTO;
import com.tianji.remark.domain.po.LikedRecord;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Set;

/**
 * <p>
 * 点赞记录表 服务类
 * </p>
 *
 * @author 东哥
 * @since 2025-07-04
 */
public interface ILikedRecordService extends IService<LikedRecord> {

    /**
     *  1、点赞或取消点赞（Day6 - 随堂1）
     * @param formDTO
     */
    void likeOrUnLike(LikeRecordFormDTO formDTO);

    /**
     * 2、根据业务ID集合查询点赞状态（Day6 - 随堂2）
     * @param bizIds
     * @return
     */
    Set<Long> isLiked(List<Long> bizIds);

    /**
     * 3、读取点赞数并发送消息（Day6 - 随堂3）
     * @param bizType
     * @param maxBizSize
     */
    default void readLikeTimesAndSendMessage(String bizType, Integer maxBizSize){};
}
